package cn.jeeweb.web.modules.equipment.entity;

import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.jeeweb.common.annotate.UiPropertyField;
import cn.jeeweb.common.flag.ObjectMark;
import cn.jeeweb.common.mvc.entity.DataEntity;
import cn.jeeweb.web.modules.sys.entity.Organization;
import cn.xjzn.framework_Core.ControlType;
import cn.xjzn.framework_Core.ModuleServe;
import cn.xjzn.framework_Core.StaticControl;
import com.baomidou.mybatisplus.annotations.TableField;

import java.util.Date;

/**
 * Created by zll on 2019/11/8.
 */
public class EqsEquipment extends DataEntity<String> implements ObjectMark {

    @TableField(value = "code")
    @Excel(name = "资产编号", orderNum = "0", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "code",labelText="资产编号",displayPosition =1)
    private String code;
    @TableField(value = "sec_code")
    @Excel(name = "财务编号", orderNum = "1", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "secCode",labelText="财务编号",displayPosition =2)
    private String secCode;
    @TableField(value = "name")
    @Excel(name = "资产名称", orderNum = "2", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "name",labelText="资产名称",displayPosition =3)
    private String name;
    @TableField(value = "equipmentCatalogCode")
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "equipmentCatalogCode",labelText="设备分类代码",displayPosition =4,controlType = ControlType.BUSINESSELECTCONTROL,referenceModuleId = ModuleServe.equipmentCatalogModule)
    private String equipmentCatalogCode;
    @TableField(value = "kind_code")
    @Excel(name = "资产分类代码", orderNum = "3", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "kindCode",labelText="资产分类代码",displayPosition =4,controlType = ControlType.DICTSELECTCONTROL,dictCode = "AssetsClass")
    private String kindCode;
    @TableField(value = "brand")
    @Excel(name = "品牌", orderNum = "4", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "brand",labelText="品牌",displayPosition =5)
    private String brand;
    @TableField(value = "model")
    @Excel(name = "规格型号", orderNum = "5", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "model",labelText="规格型号",displayPosition =6)
    private String model;
    @TableField(value = "other_prop")
    @Excel(name = "其它属性", orderNum = "6", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "otherProp",labelText="其它属性",displayPosition =7)
    private String otherProp;
    @TableField(value = "fac")
    @Excel(name = "生产商", orderNum = "7", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "fac",labelText="生产商",displayPosition =8)
    private String fac;
    @TableField(value = "acc")
    @Excel(name = "供应商", orderNum = "8", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "acc",labelText="供应商",displayPosition =9)
    private String acc;
    @TableField(value = "stock_date")
    @Excel(name = "采购日期", orderNum = "9", width = 30.0D ,exportFormat = "yyyy-MM-dd HH:mm:ss",databaseFormat="yyyy-MM-dd HH:mm:ss")
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "stockDate",labelText="采购日期",displayPosition =10,staticControl = StaticControl.DATESTATICCONTROL)
    private Date stockDate;
    @TableField(value = "dev_date")
    @Excel(name = "生产日期", orderNum = "10", width = 30.0D ,exportFormat = "yyyy-MM-dd HH:mm:ss",databaseFormat="yyyy-MM-dd HH:mm:ss")
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "devDate",labelText="生产日期",displayPosition =11,staticControl = StaticControl.DATESTATICCONTROL)
    private Date devDate;
    @TableField(value = "price")
    @Excel(name = "价格", orderNum = "11", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "price",labelText="价格",displayPosition =12)
    private Double price;
    @TableField(value = "organization_id")
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName="id",aliasName = "organizationId",labelText="机构id",ownerPropertyName = "organization",isReference = 1,referenceModuleId =ModuleServe.organizationModule,displayPosition =13)
    private String organizationId;
    @TableField(value = "chargeby")
    @Excel(name = "责任人", orderNum = "12", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "chargeby",labelText="责任人",displayPosition =14)
    private String chargeby;
    @TableField(value = "dev_useman")
    @Excel(name = "使用人", orderNum = "13", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "devUseman",labelText="使用人",displayPosition =15)
    private String devUseman;
    @TableField(value = "ar_date")
    @Excel(name = "建档日期", orderNum = "14", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "arDate",labelText="建档日期",displayPosition =16,staticControl = StaticControl.DATESTATICCONTROL)
    private Date arDate;
    @TableField(value = "buy_contract")
    @Excel(name = "合同号", orderNum = "15", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "buyContract",labelText="合同号",displayPosition =17)
    private String buyContract;
    @TableField(value = "buy_prs")
    @Excel(name = "购买人", orderNum = "16", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "buyPrs",labelText="购买人",displayPosition =18)
    private String buyPrs;
    @TableField(value = "locationCode")
    @Excel(name = "位置编号", orderNum = "17", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "locationCode",labelText="位置编号",displayPosition =19)
    private String locationCode;
    @TableField(value = "dev_use")
    @Excel(name = "用途", orderNum = "18", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "devUse",labelText="用途",displayPosition =20)
    private String devUse;
    @TableField(value = "dev_source")
    @Excel(name = "设备来源", orderNum = "19", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "devSource",labelText="设备来源",displayPosition =21)
    private String devSource;
    @TableField(value = "totalfee")
    @Excel(name = "原值", orderNum = "20", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "totalfee",labelText="原值",displayPosition =22)
    private String totalfee;
    @TableField(value = "depre_type")
    @Excel(name = "折旧方法", orderNum = "21", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "depreType",labelText="折旧方法",displayPosition =23)
    private String depreType;
    @TableField(value = "salvage_value_rate")
    @Excel(name = "预计净残值率", orderNum = "22", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "salvageValueRate",labelText="预计净残值率",displayPosition =24)
    private String salvageValueRate;
    @TableField(value = "pre_depreciation_moon")
    @Excel(name = "预计使用月份", orderNum = "23", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "preDepreciationMoon",labelText="预计使用月份",displayPosition =25)
    private String preDepreciationMoon;
    @TableField(value = "mainten_end_date")
    @Excel(name = "维修截止日期", orderNum = "24", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "maintenEndDate",labelText="维修截止日期",displayPosition =26,staticControl = StaticControl.DATESTATICCONTROL)
    private Date maintenEndDate;
    @TableField(value = "reject_end_date")
    @Excel(name = "报废截止日期", orderNum = "25", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "rejectEndDate",labelText="报废截止日期",displayPosition =27,staticControl = StaticControl.DATESTATICCONTROL)
    private Date rejectEndDate;
    @TableField(value = "dev_status")
    @Excel(name = "资产状态", orderNum = "26", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "devStatus",labelText="资产状态",displayPosition =28)
    private String devStatus;
    @TableField(value = "is_discard")
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "isDiscard",labelText="是否已销账",displayPosition =29)
    private String isDiscard;
    @TableField(value = "discard_date")
    @Excel(name = "销账日期", orderNum = "27", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "discardDate",labelText="销账日期",displayPosition =30,staticControl = StaticControl.DATESTATICCONTROL)
    private Date discardDate;
    @TableField(value = "discard_type")
    @Excel(name = "销账类型", orderNum = "28", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "discardType",labelText="销账类型",displayPosition =31)
    private String discardType;
    @TableField(value = "currency_kind")
    @Excel(name = "货币种类", orderNum = "29", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "currencyKind",labelText="货币种类",displayPosition =32)
    private String currencyKind;
    @TableField(value = "cost_center")
    @Excel(name = "所属成本中心", orderNum = "30", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "costCenter",labelText="所属成本中心",displayPosition =33)
    private String costCenter;
    @TableField(value = "asset_attributes")
    @Excel(name = "资产属性", orderNum = "31", width = 30.0D )
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "assetAttributes",labelText="资产属性",displayPosition =34)
    private String assetAttributes;
    @TableField(value = "is_special")
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "isSpecial",labelText="是否特殊设备",displayPosition =35,controlType = ControlType.DICTSELECTCONTROL,dictCode = "sf")
    private String isSpecial;

    @TableField(value = "is_safe_device")
    @UiPropertyField(moduleId = ModuleServe.equipmentModule,propertyName = "isSafeDevice",labelText="是否安全装置",displayPosition =35,controlType = ControlType.DICTSELECTCONTROL,dictCode = "sf")
    private String isSafeDevice;

    @TableField(exist = false)
    private Organization organization;


    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getSecCode() {
        return secCode;
    }

    public void setSecCode(String secCode) {
        this.secCode = secCode;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getKindCode() {
        return kindCode;
    }

    public void setKindCode(String kindCode) {
        this.kindCode = kindCode;
    }

    public String getBrand() {
        return brand;
    }

    public void setBrand(String brand) {
        this.brand = brand;
    }

    public String getModel() {
        return model;
    }

    public void setModel(String model) {
        this.model = model;
    }

    public String getOtherProp() {
        return otherProp;
    }

    public void setOtherProp(String otherProp) {
        this.otherProp = otherProp;
    }

    public String getFac() {
        return fac;
    }

    public void setFac(String fac) {
        this.fac = fac;
    }

    public String getAcc() {
        return acc;
    }

    public void setAcc(String acc) {
        this.acc = acc;
    }

    public Date getStockDate() {
        return stockDate;
    }

    public void setStockDate(Date stockDate) {
        this.stockDate = stockDate;
    }

    public Date getDevDate() {
        return devDate;
    }

    public void setDevDate(Date devDate) {
        this.devDate = devDate;
    }

    public Double getPrice() {
        return price;
    }

    public void setPrice(Double price) {
        this.price = price;
    }

    public String getOrganizationId() {
        return organizationId;
    }

    public void setOrganizationId(String organizationId) {
        this.organizationId = organizationId;
    }

    public String getChargeby() {
        return chargeby;
    }

    public void setChargeby(String chargeby) {
        this.chargeby = chargeby;
    }

    public String getDevUseman() {
        return devUseman;
    }

    public void setDevUseman(String devUseman) {
        this.devUseman = devUseman;
    }

    public Date getArDate() {
        return arDate;
    }

    public void setArDate(Date arDate) {
        this.arDate = arDate;
    }

    public String getBuyContract() {
        return buyContract;
    }

    public void setBuyContract(String buyContract) {
        this.buyContract = buyContract;
    }

    public String getBuyPrs() {
        return buyPrs;
    }

    public void setBuyPrs(String buyPrs) {
        this.buyPrs = buyPrs;
    }

    public String getLocationCode() {
        return locationCode;
    }

    public void setLocationCode(String locationCode) {
        this.locationCode = locationCode;
    }

    public String getDevUse() {
        return devUse;
    }

    public void setDevUse(String devUse) {
        this.devUse = devUse;
    }

    public String getDevSource() {
        return devSource;
    }

    public void setDevSource(String devSource) {
        this.devSource = devSource;
    }

    public String getTotalfee() {
        return totalfee;
    }

    public void setTotalfee(String totalfee) {
        this.totalfee = totalfee;
    }

    public String getDepreType() {
        return depreType;
    }

    public void setDepreType(String depreType) {
        this.depreType = depreType;
    }

    public String getSalvageValueRate() {
        return salvageValueRate;
    }

    public void setSalvageValueRate(String salvageValueRate) {
        this.salvageValueRate = salvageValueRate;
    }

    public String getPreDepreciationMoon() {
        return preDepreciationMoon;
    }

    public void setPreDepreciationMoon(String preDepreciationMoon) {
        this.preDepreciationMoon = preDepreciationMoon;
    }

    public Date getMaintenEndDate() {
        return maintenEndDate;
    }

    public void setMaintenEndDate(Date maintenEndDate) {
        this.maintenEndDate = maintenEndDate;
    }

    public Date getRejectEndDate() {
        return rejectEndDate;
    }

    public void setRejectEndDate(Date rejectEndDate) {
        this.rejectEndDate = rejectEndDate;
    }

    public String getDevStatus() {
        return devStatus;
    }

    public void setDevStatus(String devStatus) {
        this.devStatus = devStatus;
    }

    public String getIsDiscard() {
        return isDiscard;
    }

    public void setIsDiscard(String isDiscard) {
        this.isDiscard = isDiscard;
    }

    public Date getDiscardDate() {
        return discardDate;
    }

    public void setDiscardDate(Date discardDate) {
        this.discardDate = discardDate;
    }

    public String getDiscardType() {
        return discardType;
    }

    public void setDiscardType(String discardType) {
        this.discardType = discardType;
    }

    public String getCurrencyKind() {
        return currencyKind;
    }

    public void setCurrencyKind(String currencyKind) {
        this.currencyKind = currencyKind;
    }

    public String getCostCenter() {
        return costCenter;
    }

    public void setCostCenter(String costCenter) {
        this.costCenter = costCenter;
    }

    public String getAssetAttributes() {
        return assetAttributes;
    }

    public void setAssetAttributes(String assetAttributes) {
        this.assetAttributes = assetAttributes;
    }

    public String getIsSpecial() {
        return isSpecial;
    }

    public void setIsSpecial(String isSpecial) {
        this.isSpecial = isSpecial;
    }

    public Organization getOrganization() {
        return organization;
    }

    public void setOrganization(Organization organization) {
        this.organization = organization;
    }

    public String getEquipmentCatalogCode() {
        return equipmentCatalogCode;
    }

    public void setEquipmentCatalogCode(String equipmentCatalogCode) {
        this.equipmentCatalogCode = equipmentCatalogCode;
    }

    public String getIsSafeDevice() {
        return isSafeDevice;
    }

    public void setIsSafeDevice(String isSafeDevice) {
        this.isSafeDevice = isSafeDevice;
    }
}
